package com.mercury.ec.framework.air.core.property;

import lombok.Data;
import org.springframework.validation.annotation.Validated;

/**
 * 机票渠道配置类
 *
 * @author hesx
 */
@Data
@Validated
public class AirChannelProperties {

    /**
     * id
     */
    private Long id;
    /**
     * 名称
     */
    private String name;
    /**
     * 产品 字典（basic_product_type 1-机票/2-火车票/3-保险/4-洒店/5-机场服务/6-用车/7-短信/100-其它）
     * <p>
     * 枚举 {@link TODO basic_product_type 对应的类}
     */
    private Integer productType;
    /**
     * 渠道 字典（机票-basic_air_channel_type/火车票-basic_train_channel_type/短信-system_sms_channel_code）
     * <p>
     * 枚举 {@link TODO basic_air_channel_type 对应的类}
     */
    private Integer channelType;
    /**
     * 类型 字典（机票-basic_air_ticket_type/火车票-basic_train_ticket_type）
     * <p>
     * 枚举 {@link TODO basic_air_ticket_type 对应的类}
     */
    private Integer type;
    /**
     * 接口地址
     */
    private String url;
    /**
     * 回调地址
     */
    private String callbackUrl;
    /**
     * 接口账号
     */
    private String apiAccount;
    /**
     * 接口密码
     */
    private String apiPassword;
    /**
     * 接口密钥
     */
    private String apiSecret;
    /**
     * 适用查询
     * <p>
     * 枚举 {@link TODO infra_boolean_string 对应的类}
     */
    private Boolean applySearch;
    /**
     * 适用预订
     * <p>
     * 枚举 {@link TODO infra_boolean_string 对应的类}
     */
    private Boolean applyBook;
    /**
     * 适用出票
     * <p>
     * 枚举 {@link TODO infra_boolean_string 对应的类}
     */
    private Boolean applyIssue;
    /**
     * 适用退票
     * <p>
     * 枚举 {@link TODO infra_boolean_string 对应的类}
     */
    private Boolean applyReturn;
    /**
     * 适用改签
     * <p>
     * 枚举 {@link TODO infra_boolean_string 对应的类}
     */
    private Boolean applyChange;
    /**
     * office号
     */
    private String office;
    /**
     * 供应商id 见表（basic_vendor.id）
     */
    private Long vendorId;
    /**
     * 支付科目id 见表（basic_pay_subject.id）
     */
    private Long paySubjectId;
    /**
     * 出（退）票员id 见表（system_users.id）
     */
    private Long issueUserId;
    /**
     * 漏单补录客户id 见表（basic_customer.id）
     */
    private Long loseOrderCustomerId;
    /**
     * 联系人
     */
    private String contact;
    /**
     * 联系手机
     */
    private String contactMobile;
    /**
     * IATA号
     */
    private String iataNo;
    /**
     * 状态 字典（common_status）
     * <p>
     * 枚举 {@link TODO common_status 对应的类}
     */
    private Integer status;
}
